//==========================================================================
// Copyright (c) 2000-2008,  Elastos, Inc.  All Rights Reserved.
//==========================================================================

#ifndef __COMPOUND_CHANNEL_EVENT_H
#define __COMPOUND_CHANNEL_EVENT_H

#define TIMEOUT 1000

typedef struct WaitReply
{
    C_UINT channel_number;
    C_BOOL bTransSucceed;
    C_EVENT event;
    WaitReply *prev;
    WaitReply *next;
}WaitReply;

EXTERN_C C_INT CreateChannelEventStorage();
EXTERN_C C_VOID DelChannelEventStorage();
EXTERN_C void ReleaseWaitReply(WaitReply* pNode);
EXTERN_C C_INT CreateWaitReply(C_UINT channel_number, WaitReply** ppNode);
EXTERN_C C_INT NotifyChannelEvent(C_UINT channel_number, C_BOOL bReply);

#endif //__COMPOUND_CHANNEL_EVENT_H
